<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="de">
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
 <meta name="Page-topic" content="ST-Open Tutorial: Der Feldkopf" />
 <meta name="Description" content="ST-Open Tutorial: Der Feldkopf" />
 <meta name="Keywords" content="ST-Open Weichwaren, Open Quelle, ST-Open, Weichwaren, Bibliothek, Bibliotheken, freie Weichwaren, Assembler, C" />
 <meta name="date" content="2012-01-01T00:00:00+00:00" />
 <meta name="robots" content="index,follow" />
 <meta name="revisit-after" content="14 days" />
 <meta name="generator" content="Bernhard Schornak, handwritten" />
 <style type="text/css"><!--@import "../../st.css";--></style>
 <link rel="SHORTCUT ICON" href="../../../../pics/favicon.ico" />
 <title>Der Feldkopf</title>
</head>
<body id="top">
<div class="pagehd">
<div id="menu">
<ul>
 <li><a href="../../../index.htm">Weichwaren</a></li>
 <li><a href="../tut/index.htm">Tutorials</a></li>
 <li><a href="../index.htm">Dokumentation</a></li>
 <li><a href="../alp.htm">alphabetisch</a></li>
 <li><a href="../fct.htm">nach Funktion</a></li>
</ul>
</div>
<div class="update">[2012-01-01]</div>
<div class="headpc"><img src="../../pics/ste.png" alt="QuelleDoc Logo" width="75" height="75" border="0" /></div>
</div>
<div class="crlf1"></div>
&#160;&#160;&#160;<a href="index.htm"><img src="../../../../pics/nav_up.png" alt="aufw&auml;rts" width="20" height="20" border="0" title="aufw&auml;rts" /></a>
&#160;&#160;&#160;<a href="0501.htm"><img src="../../../../pics/nav_bk.png" alt="zur&uuml;ck" width="20" height="20" border="0" title="zur&uuml;ck" /></a>
&#160;&#160;&#160;<a href="0503.htm"><img src="../../../../pics/nav_fw.png" alt="vorw&auml;rts" width="20" height="20" border="0" title="vorw&auml;rts" /></a>
&#160;&#160;&#160;<a href="FFFF.htm">Glossar</a>
<div class="crlf1"></div>
<div class="text100">
<h1>Der Feldkopf</h1>
Der Feldkopf enth&auml;lt alle zur Verwaltung des Feldes ben&ouml;tigten Daten:
<div class="crlf1"></div>
<table width="100%">
<tr><th width="4%">Abstand</th><th width="6%">.0</th><th width="6%">.1</th><th width="6%">.2</th><th width="6%">.3</th><th width="6%">.4</th>
<th width="6%">.5</th><th width="6%">.6</th><th width="6%">.7</th><th width="6%">.8</th><th width="6%">.9</th><th width="6%">.A</th>
<th width="6%">.B</th><th width="6%">.C</th><th width="6%">.D</th><th width="6%">.E</th><th width="6%">.F</th></tr>
<tr><td>000.</td><td colspan="16">32 mal 0x00</td></tr>
<tr><td>001.</td><td colspan="16">(Erweiterung f&uuml;r AVX-Zugriffe)</td></tr>
<tr><td>002.</td><td colspan="4">Blockgr&ouml;sse (38 * 3C)</td><td colspan="4">Anzahl Typen</td><td colspan="4">SecSys Kontrolldaten</td><td colspan="4">Feldnummer</td></tr>
<tr><td>003.</td><td colspan="2">Status</td><td>Sec-L</td><td>Sec-S</td><td colspan="4">Feldende (Abstand)</td><td colspan="4">max. Eintragl&auml;nge</td><td colspan="4">Anzahl Eintr&auml;ge</td></tr>
<tr><td>004.</td><td>Typ00</td><td>Typ01</td><td>Typ02</td><td>Typ03</td><td>Typ04</td><td>Typ05</td><td>Typ06</td><td>Typ07</td>
<td>Typ08</td><td>Typ09</td><td>Typ0A</td><td>Typ0B</td><td>Typ0C</td><td>Typ0D</td><td>Typ0E</td><td>Typ0F</td></tr>
<tr><td>005.</td><td>Typ10</td><td>Typ11</td><td>Typ12</td><td>Typ13</td><td>Typ14</td><td>Typ15</td><td>Typ16</td><td>Typ17</td>
<td>Typ18</td><td>Typ19</td><td>Typ1A</td><td>Typ1B</td><td>Typ1C</td><td>Typ1D</td><td>Typ1E</td><td>Typ1F</td></tr>
<tr><td>006.</td><td colspan="4">Abstand 00</td><td colspan="4">Abstand 01</td><td colspan="4">Abstand 02</td><td colspan="4">Abstand 03</td></tr>
<tr><td>007.</td><td colspan="4">Abstand 04</td><td colspan="4">Abstand 05</td><td colspan="4">Abstand 06</td><td colspan="4">Abstand 07</td></tr>
<tr><td>008.</td><td colspan="4">Abstand 08</td><td colspan="4">Abstand 09</td><td colspan="4">Abstand 0A</td><td colspan="4">Abstand 0B</td></tr>
<tr><td>009.</td><td colspan="4">Abstand 0C</td><td colspan="4">Abstand 0D</td><td colspan="4">Abstand 0E</td><td colspan="4">Abstand 0F</td></tr>
<tr><td>00A.</td><td colspan="4">Abstand 10</td><td colspan="4">Abstand 11</td><td colspan="4">Abstand 12</td><td colspan="4">Abstand 13</td></tr>
<tr><td>00B.</td><td colspan="4">Abstand 14</td><td colspan="4">Abstand 15</td><td colspan="4">Abstand 16</td><td colspan="4">Abstand 17</td></tr>
<tr><td>00C.</td><td colspan="4">Abstand 18</td><td colspan="4">Abstand 19</td><td colspan="4">Abstand 1A</td><td colspan="4">Abstand 1B</td></tr>
<tr><td>00D.</td><td colspan="4">Abstand 1C</td><td colspan="4">Abstand 1D</td><td colspan="4">Abstand 1E</td><td colspan="4">Abstand 1F</td></tr>
<tr><td>00E.</td><td colspan="16">Name des Feldes -  maximal 31 Zeichen,</td></tr>
<tr><td>00F.</td><td colspan="16">ungenutzte Zeichen werden auf 0x00 gesetzt</td></tr>
</table>
<div class="crlf1"></div>
<h2>Erl&auml;uterungen</h2>
<h3>0000</h3>
0000[MemEA] Muss 32 Byte (Gr&ouml;sse eines AVX-Registers) mit dem Inhalt 0x00 enthalten. Der
 Abstand s&auml;mtlicher Zeichenketten in einem neu angelegten Feld wird mit dem Inhalt Null
 versehen - dieser Abstand ist &auml;quivalent mit der Adresse der leeren Zeichenkette am
 Feldanfang. Die Nullen am Anfang jedes Datenfeldes werden von verschiedenen Systemfunktionen
 auch zur &Uuml;berpr&uuml;fung der Integrit&auml;t von Datenfeldern verwendet. Stehen hier
 andere Werte als Null, wird der Inhalt des Speicherblocks nicht als Datenfeld anerkannt!
<div class="crlf1"></div>
<h3>0020</h3>
0020[MemEA] enth&auml;lt die maximale Gr&ouml;sse eines Unterfeldes. Diese errechnet sich aus
 <b>maximale Eintragl&auml;nge * Anzahl Eintr&auml;ge</b>. Die Multiplikation erfolgt einmalig
 bei der Erschaffung des Feldes. Funktionen, die die Gr&ouml;sse ben&ouml;tigen, m&uuml;ssen
 die Berechnung nicht st&auml;ndig wiederholen, sondern k&ouml;nnen verz&ouml;gerungsfrei auf
 die hier gespeicherte Information zugreifen.
<div class="crlf1"></div>
<h3>0024</h3>
0024[MemEA] enth&auml;lt die Anzahl der Datentypen (= Unterfelder) in diesem Datenfeld. Durch
 das Speichern dieser Information ersparen wir uns umst&auml;ndliche und zeitintensive Such-
 und Rechenoperationen.
<div class="crlf1"></div>
<h3>0028</h3>
0028[MemEA] enth&auml;lt Kontrolldaten f&uuml;r SecSys. Wird das Datenfeld nicht von SecSys
 &uuml;berwacht, sollte dieses Doppelwort auf Null gesetzt werden.
<div class="crlf1"></div>
<h3>002C</h3>
002C[MemEA] enth&auml;lt die Feldnummer. LDreq() verwendet diese Information zur Pr&uuml;fung
 und Identifizierung von Datenfeldern.
<div class="crlf1"></div>
<h3>0030</h3>
0030[MemEA] enth&auml;lt das <a href="0103.htm">Statuswort</a> des Datenfeldes.
<div class="crlf1"></div>
<h3>0032</h3>
0032[MemEA] enth&auml;lt die erforderliche Berechtigungsstufe f&uuml;r Lesezugriffe. Diese
 Information wird nur ausgewertet, wenn das Datenfeld von SecSys &uuml;berwacht wird.
<div class="crlf1"></div>
<h3>0033</h3>
0033[MemEA] enth&auml;lt die erforderliche Berechtigungsstufe f&uuml;r Schreibzugriffe. Diese
 Information wird nur ausgewertet, wenn das Datenfeld von SecSys &uuml;berwacht wird.
<div class="crlf1"></div>
<h3>0034</h3>
0034[MemEA] enth&auml;lt die aktuelle Gr&ouml;sse des Datenfeldes. Dies ist gleichzeitig auch
 der Abstand, ab dem die n&auml;chste zu schreibende Zeichenkette abgelegt wird.
<div class="crlf1"></div>
<h3>0038</h3>
0038[MemEA] enth&auml;lt die maximale Gr&ouml;sse eines Eintrags in diesem Datenfeld. F&uuml;r
 den Datentyp 06 (FIX) ist das die feste Gr&ouml;sse jedes Datenblocks in diesem Datenfeld.
<div class="crlf1"></div>
<h3>003C</h3>
003C[MemEA] enth&auml;lt die Anzahl der Eintr&auml;ge in jedem Unterfeld.
<div class="crlf1"></div>
<h3>0040</h3>
0040[MemEA] enth&auml;lt die Typentabelle der 32 m&ouml;glichen Unterfelder. Die Tabelle ist
 in aufsteigender Folge organisiert. Alle der letzten Typ-Definition folgenden Eintr&auml;ge
 m&uuml;ssen auf Null (kein Typ) gesetzt werden.
<div class="crlf1"></div>
<h3>0060</h3>
0060[MemEA] enth&auml;lt die Abstandstabelle des Datenfeldes. Die &Auml;bst&auml;nde aller
 als "kein Typ" definierten Unterfelder m&uuml;ssen auf Null gesetzt werden.
<div class="crlf1"></div>
<h3>00E0</h3>
00E0[MemEA] bis 00FE[MemEA] enth&auml;lt einen optionalen Feldnamen. Ist keiner angegeben,
 setzen die DatTools hier die Feldnummer in hexadezimaler Notation ein. Da der Name wie eine
 Zeichenkette behandelt wird, muss er mit einer Null terminiert sein, und die Gr&ouml;sse ist
 auf 31 Zeichen beschr&auml;nkt. DadTools k&uuml;rzen den Namen automatisch, wenn er die
 maximal zul&auml;ssige Gr&ouml;sse &uuml;berschreitet.
</div>
<div class="crlf2"></div>
&#160;&#160;&#160;<a href="index.htm"><img src="../../../../pics/nav_up.png" alt="aufw&auml;rts" width="20" height="20" border="0" title="aufw&auml;rts" /></a>
&#160;&#160;&#160;<a href="0501.htm"><img src="../../../../pics/nav_bk.png" alt="zur&uuml;ck" width="20" height="20" border="0" title="zur&uuml;ck" /></a>
&#160;&#160;&#160;<a href="0503.htm"><img src="../../../../pics/nav_fw.png" alt="vorw&auml;rts" width="20" height="20" border="0" title="vorw&auml;rts" /></a>
<div class="crlf1"></div>
&#160;&#160;&#160;<a href="http://validator.w3.org/check?uri=http%3A%2F%2Fst-open.com%2Fst-open%2Fdoc%2Fd%2Ftut%2F0502.htm">
<img src="../../../../pics/xhtml.png" alt="validHTML" width="100" height="35" border="0" title="XHTML pr&uuml;fen" /></a>
<div class="crlf1"></div>
</body>
</html>
